伪协议

一、什么是伪协议?
iOS/Android系统调起指定APP这篇文章里可以看到在手机客户端调起微信反馈页面的方法如下:
点击调起微信反馈(手机端)。
代码如下:

<a href="weixin://dl/feedback">点击调起微信反馈(手机端)。</a>

这其中用到的weixin://dl/feedback就是一种伪协议。
伪协议是为关联应用程序而使用的在标准协议(http://,https://,ftp://)之外的一种协议。

二、什么是javascript伪协议?
javascript伪协议是形如:javascript:的一种协议。
其可以直接输入在地址栏里,javascript:后的代码会当javascript来执行,并将结果返回给当前页面。
例子:
点击打开弹窗
点击不会跳转
点击进行跳转
代码如下:

<a href="javascript:alert('JS!');">点击打开弹窗</a>//点击这面的链接,浏览器并不会跳转到任何页面,而是显示一个弹窗
<a href="javascript:void(0);">点击不会跳转</a> //为了生成一个undefined的返回值,等同于在最后直接加return;。
<a href="http://www.lvkunjie.com">点击进行跳转</a>

注意:尽管javascript伪协议提供了一定的灵活性,但在页面中尽量不要使用!而对于调试JavaScript,javascript伪协议则显得十分有用!

三、如何注册伪协议?
edit .reg file:
代码如下:

Windows Registry Editor Version 5.00
[HKEY_CLASSES_ROOT\jinjj]
"URL Protocol"="C:\\Program Files\\jinjj\\trans.exe"
@="jinjjProtocol"
[HKEY_CLASSES_ROOT\jinjj\DefaultIcon]
@="C:\\Program Files\\jinjj\\trans.exe,1"
[HKEY_CLASSES_ROOT\jinjj\shell]
[HKEY_CLASSES_ROOT\jinjj\shell\open]
[HKEY_CLASSES_ROOT\jinjj\shell\open\command]
@="\"C:\\Program Files\\jinjj\\trans.exe" \"%1\""

在浏览器地址栏中键入:jinjj://1234,启动注册表中路径下的程序!
参考文章:
(1)其它-javascript:伪协议
(2)如何注册伪协议

此条目发表在NodeJs分类目录,贴了标签。将固定链接加入收藏夹。

发表评论

邮箱地址不会被公开。 必填项已用*标注